Template Method
 - 공통적인 프로세스 묶어주기
 - 알고리즘의 구조를 메소드에 정의하고 하위 클래스에서 알고리즘 구조의
   변경없이 알고리즘을 재정의 하는 패턴

 When?
  - 구현하려는 알고리즘이 일정한 프로세스가 있다.
  - 구현하려는 알고리즘이 변경 가능성이 있다.

 How?
  - 알고리즘을 여러 단계로 나눈다.
  - 나눠진 알고리즘의 단계를 메소드로 선언한다.
  - 알고리즘을 수행할 템플릿 메소드를 만든다.
  - 하위 클래스에서 나눠진 메소드들을 구현한다.

요구사항
 - 게임의 접속을 구현
    - requestConnection(String str) : String
 - 유저가 게임 접속시 다음을 고려
    - 보안 과정 : 보안 관련 부분을 처리합니다.
        - doSecurity(String string) : String
    - 인증 과정 : username 과 password 가 일치하는지 확인합니다.
        - authentication(String id, String password) : boolean
    - 권한 과정 : 접속자가 유료 회원인지 무료회원인지 게임 마스터인지 확인합니다.
        - authorization(String userName) : int
    - 접속 과정 : 접속자에게 커넥션을 정보를 넘겨 줍니다.
        - connection(String info) : String

 추가사항이 생긴다면
 - 강화된 방식으로 코드 변경
 - 밤 10시 이후 접속 제한
 -> 구현부를 수정하면 된다.